//#include "rbtree.hpp"
#include <unistd.h>
//#include "Map.hpp"
//#include "Set.hpp"
#include "rbtree_copy.hpp"
using namespace ns_RBTree;

// void Test1()
// {
//     RBTree<int> rb;
//     rb.insert(8);
//     rb.insert(6);
//     rb.insert(11);
//     rb.insert(5);
//     rb.insert(7);
//     rb.insert(10);
//     rb.insert(13);
//     rb.insert(12);
//     rb.insert(15);
//     //rb.Inorder();
//     //rb.Blance();
// }

// void Test2()
// {
//     RBTree<int> rb;
//     rb.insert(13);
//     rb.insert(8);
//     rb.insert(17);
//     rb.insert(1);
//     rb.insert(11);
//     rb.insert(15);
//     rb.insert(25);
//     rb.insert(6);
//     rb.insert(22);
//     rb.insert(27);
    
//     RBTree<int>::iterator it = rb.begin();
//     while(it != rb.end())
//     {
//         std::cout << *it << " ";
//         ++it;
//     }
//     std::cout << std::endl;
// }

void Test()
{
    RBTree<int> rb;
    rb.insert(1);
    rb.insert(4);
    rb.insert(2);
    rb.insert(24);
    rb.insert(6);
    rb.insert(2);
    rb.insert(12);
    rb.Inorder();
    std::cout << rb.Blance() << std::endl;
}

int main()
{
    //Test1();
    //Test2();
    //bit::Test();
    //bit::test_set();
    Test();

    return 0;
}

